Generally, software packages contain a set of related functions and features to satisfy a wide variety of customer and installation requirements. For example, a word processing program may contain a spelling checker function, a thesaurus function, an outline function, a format function and so on.
At installation time most of these packages allow the user to pick and choose functions to be installed with the software. Frequently, the user who is new to the software package, and therefore unfamiliar with the usefulness of the functions, may not always be able to make informed decisions as to which functions to install. The user may decide to install many of these functions in the belief that the functions may be used in the future. Also, when confused, the user may decide to add a feature to be on the safe side. Adding these functions and features costs the user in system resources such as disk space and memory. Performance of the system is also negatively affected by the presence of the additional functions and features.
Furthermore, in order to avoid complex installation procedures, the installation of a software package may group together sets of similar functions and allow the user to select sets of functions to be installed. A user requiring only one or two of the functions in a set is forced to install the entire set, thereby using system resources inefficiently.
Over a period of time a user may install a variety of software packages on the system in order to satisfy different needs. The user may be forced to acquire additional hardware for additional disk space and memory on which to place new software packages, while a considerable amount of the existing resources of the system are occupied by unused functions distributed in existing installed software packages. Some of these functions associated with a software package may never be used even after several years.
Prior art data processing systems provide a method and system for deleting functions without having to know the name of every program file of the functions to be deleted. The user only needs to know which function or feature is to be removed in order to remove all program files required to operate the function or feature. Often, however, a typical user is not familiar enough with the operation of the functions and features provided with the software to know which functions and features may be removed without detrimentally affecting the desired operation of the software. Therefore, unused and infrequently used functions remain on the data processing system even though the capability to remove these functions and their related program files exists.
Other prior art methods and systems provide means to streamline and simplify selection by a user of options for operation of the software. Selections dialogs, such as pull down menus, provide listings of options to a user. These complex options may hide several functions in order to reduce confusion of the user. Alternatively, more experienced users may customize the selection dialogs to include more complex options. The functions are not deleted from the data processing system when hidden from the user in the selection dialogs, and still remain a part of the software package. Therefore, the hidden functions continue to occupy needed system resources and negatively affect performance of the system.